package com.example.demo.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 作者：邓利
 * 时间：2024-06-05
 **/
//配置类一定要这个注释
@Configuration
public class Cors implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        /**
         * addMapping：配置可以被跨域的路径，可以任意配置，可以具体到直接请求路径。
         * allowedOrigins：允许所有的请求域名访问我们的跨域资源，可以固定单条或者多条内容，如"http://www.baidu.com"，只有百度可以访问我们的跨域资源。
         * allowedHeaders：允许所有的请求header访问，可以自定义设置任意请求头信息，如"X-YOUR-TOKEN
         * allowedMethods：允许所有的请求方法访问我们的跨域资源，如GET、POST、PUT、DELETE等。
         * maxAge：预检请求的有效期，单位为秒。
         * 注：maxAge的值必须大于0，否则不生效。
         */
        registry.addMapping("/**")
                .allowedOrigins("*")
                .allowedHeaders("*")
                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
                .maxAge(3600);

    }
}
